// 1. 引入内置模块：events（获取EventEmitter）、util（实现继承）
const EventEmitter = require('events').EventEmitter;
const util = require('util');

// 2. 定义Radio构造函数，接收name（电台名称）和frequency（电台频率）
function Radio(name, frequency) {
  // 3. 调用EventEmitter构造函数，确保继承生效
  EventEmitter.call(this);
  // 4. 初始化Radio实例属性
  this.name = name; // 电台名称（如"music radio"）
  this.frequency = frequency; // 电台频率（如"FM 106.7"）
}

// 5. 实现继承：Radio继承EventEmitter
util.inherits(Radio, EventEmitter);

// 6. 给Radio原型添加play方法：触发“打开电台”事件
Radio.prototype.play = function() {
  this.emit('open'); // 触发名为"open"的事件
};

// 7. 给Radio原型添加stop方法：触发“关闭电台”事件
Radio.prototype.stop = function() {
  this.emit('close'); // 触发名为"close"的事件
};

// 8. 导出Radio构造函数，供listenRadio.js引入
module.exports = Radio;